Cuando toco la etiqueta de anclaje para enviar los datos, aparece este error Uncaught TypeError: $(...).attrs is not a function .
Hice console.log($(this)) , el resultado es [object Object] .
También hice console.log(JSON.stringify($(this))) , la salida es {"0":{},"length":1}
HTML , Mi etiqueta ancla:
<a href="{% url 'my-site' slug=object.anotherObject.slug %}" id="update-done" data-donePk="{{object.pk}}" >Done</a>JS , mi AJAX
$(document).on('click', '#update-done', function(e) { e.preventDefault() let confirmation = confirm("Are you sure you want to make done?"); if (confirmation) { console.log("this: " + JSON.stringify($(this))) alert($(this)) // Error comes from this line below var objectPk = $(this).attrs('data-donePk') var makeDone = 'post' $.ajax({ url: "/site/make_done/", data: { 'csrfmiddlewaretoken': "{{ csrf_token }}", "objectPk":objectPk, "makeDone": makeDone, }, type: "POST", dataType: 'json', cache: false, success: function(data) { console.log(data) }, }) } });